home *** CD-ROM | disk | FTP | other *** search
/ Download Now 8 / Download Now V8.iso / Program / InternetTools / ApacheWebServer1.3.6 / apache_1_3_6_win32.exe / _SETUP.1 / INSTALL < prev    next >
Encoding:
Text File  |  1998-05-20  |  7.2 KB  |  170 lines

  1.  
  2.   A P A C H E   I N S T A L L A T I O N
  3.  
  4.   NOTE: Windows users please read the documents ../README.NT and
  5.         http://www.apache.org/docs/windows.html, (or the
  6.         htdocs/manual/windows.html file included with Apache).  
  7.         The following applies only to Unix users.
  8.  
  9.   Installing the Apache 1.3 HTTP server with APACI
  10.   ================================================
  11.  
  12.   For the out-of-the-box build and installation through the new Apache
  13.   Autoconf-style Interface (APACI) see the file INSTALL in the parent
  14.   directory. This document describes only the manual way of installing Apache.
  15.  
  16.   Installing the Apache 1.3 HTTP server manually
  17.   ==============================================
  18.  
  19.   Unless you grabbed a binary distribution of Apache, you must compile it for
  20.   your specific platform.  In order to compile it, you must set compile-time
  21.   options (in particular, system type) for your system by editing a
  22.   Configuration file, run a script which generates a Makefile and a small
  23.   piece of C code, and then compile it.
  24.  
  25.   Compilation
  26.   -----------
  27.  
  28.   Building the Apache Web server absolutely REQUIRES an ANSI C-compliant
  29.   compiler.  If your compiler does not meet this requirement, don't even
  30.   bother trying to build the server; it won't work.  The server may or may not
  31.   build correctly with a C++ compiler.  Making it compilable with C++ is not a
  32.   goal at this point, so if it doesn't work please use a normal ANSI C
  33.   compiler instead.
  34.  
  35.   This release of Apache supports the notion of "optional modules".  However,
  36.   the server has to know which modules are compiled into it, in order for
  37.   those modules to be effective; this requires generation of a short bit of
  38.   code ("modules.c") which simply has a list of them.
  39.  
  40.   It is also necessary to choose the correct options for your platform.
  41.  
  42.   To do this:
  43.  
  44.   1) Copy the file "Configuration.tmpl" to "Configuration" and then edit
  45.      "Configuration".  This contains the list and settings of various "Rules"
  46.      and an additional section at the bottom which lists the modules which
  47.      have been compiled in, and also names the files containing them.  You
  48.      will need to:
  49.  
  50.      a) Adjust the Rules and EXTRA_CFLAGS|LIBS|LDFLAGS|INCLUDES if
  51.         you feel so inclined.
  52.  
  53.      b) Uncomment lines corresponding to those optional modules you wish to
  54.         include (among the Module lines at the bottom of the file), or add new
  55.         lines corresponding to custom modules you have written.  (See API.html
  56.         for preliminary docs on how to do that).    
  57.  
  58.      Note that DBM auth has to be explicitly configured in, if you want it ---
  59.      just uncomment the corresponding line.
  60.  
  61.   2) Run the "Configure" script:
  62.  
  63.      $ ./Configure
  64.      Using config file: Configuration
  65.      Creating Makefile
  66.       + configured for <whatever> platform
  67.       + setting C compiler to <whatever>
  68.       + Adding selected modules
  69.       + doing sanity check on compiler and options
  70.      Creating Makefile in support
  71.      Creating Makefile in main
  72.      Creating Makefile in os/unix
  73.      Creating Makefile in modules/standard
  74.      $ _
  75.  
  76.      This generates new versions of the Makefiles and of modules.c.  (If you
  77.      want to maintain multiple configurations, you can say, e.g.,
  78.  
  79.      $ ./Configure -file Configuration.ai
  80.      Using config file: Configuration.ai
  81.      Creating Makefile
  82.       + configured for <whatever> platform
  83.       + setting C compiler to <whatever>
  84.       + Adding selected modules
  85.       + doing sanity check on compiler and options
  86.      Creating Makefile in support
  87.      Creating Makefile in main
  88.      Creating Makefile in os/unix
  89.      Creating Makefile in modules/standard
  90.      $ _
  91.  
  92.   3) Now compile the program:
  93.   
  94.      $ make
  95.  
  96.   The modules we place in the Apache distribution are the ones we have tested
  97.   and are used regularly by various members of the Apache development group.
  98.   Additional modules contributed by members or third parties with specific
  99.   needs or functions are available at
  100.   http://www.apache.org/dist/contrib/modules/.  There are instructions
  101.   on that page for linking these modules into the core Apache code.
  102.  
  103.   If during compilation you get a warning about a missing 'regex.h', set
  104.   WANTHSREGEX=yes in the 'Configuration', and let The Apache Group know you
  105.   needed to do this for your OS by filling out a problem report form at
  106.   http://bugs.apache.org/, or by sending a mail message to
  107.   apache-bugs@apache.org. Include the output of the command "uname -a".
  108.  
  109.   Installation
  110.   ------------
  111.  
  112.   After compilation, you will have a binary called "httpd" in this src/
  113.   directory.  If you received a binary distribution of apache, you should have
  114.   this file already.
  115.  
  116.   The next step is to edit the configuration files for the server.  In the
  117.   top-level subdirectory called "conf" you should find distribution versions
  118.   of the three configuration files: srm.conf-dist, access.conf-dist, and
  119.   httpd.conf-dist.  Copy them to srm.conf, access.conf, httpd.conf
  120.   respectively.
  121.  
  122.   First edit httpd.conf.  This sets up general attributes about the server -
  123.   the port number, the user it runs as, etc.  Next edit the srm.conf file -
  124.   this sets up the root of the document tree, special functions like
  125.   server-parsed HTML or internal imagemap parsing, etc.  Finally, edit the
  126.   access.conf file to at least set the base cases of access. Documentation for
  127.   all of these is located at http://www.apache.org/docs/.
  128.  
  129.   Finally, make a call to httpd, with a -f to the full path to the httpd.conf
  130.   file. I.e., the common case:
  131.  
  132.     $ /usr/local/apache/httpd -f /usr/local/apache/conf/httpd.conf
  133.  
  134.   And voila! The server should be running.
  135.  
  136.   By default the srm.conf and access.conf files are located by name - to
  137.   specifically call them by other names, use the AccessConfig and
  138.   ResourceConfig directives in httpd.conf.
  139.  
  140.   Set your system time properly!
  141.  
  142.   Proper operation of a public web server requires accurate time
  143.   keeping, since elements of the HTTP protocol are expressed as the time
  144.   of day.  So, it's time to investigate setting up NTP or some other
  145.   time synchronization system on your Unix box, or whatever the
  146.   equivalent on NT would be.
  147.  
  148.   Upgrading an Existing Apache Environment
  149.   ----------------------------------------
  150.  
  151.   Between releases of Apache, there are several files that are likely to get
  152.   changed (aside from the source, of course).  These include:
  153.  
  154.     src/Makefile.tmpl
  155.     src/Configuration.tmpl
  156.     src/Configure
  157.     conf/*.conf-dist
  158.     conf/mime.types
  159.  
  160.   It's recommended that you unpack a new Apache version distribution into a
  161.   different directory than the existing one, and check these files against the
  162.   ones you already have for new or changed directives.  It's almost certain
  163.   that the Configure, Configuration.tmpl, and Makefile.tmpl files are going to
  164.   change, so pay particular attention to merging your existing Configuration
  165.   settings with the ones in the Configuration.tmpl file to make a new
  166.   Configuration file in the new Apache src directory.  Then follow the steps
  167.   for a new installation to build and test the new server before replacing the
  168.   existing Apache directory tree with the one from the new distribution.
  169.  
  170.